/*
  Skiing
  题目描述
    AtCoder 滑雪场有 n 个场地，称为场地 1、场地 2、…、场地 n。场地 i 的高度为 Hi。
    有 M 个斜坡双向连接两个空间。第 i 个斜坡 (1 ≤ i ≤ M) 连接场地 Ui 和场地 Vi。
    可以通过一些斜坡在任意两个空间之间滑行。

    高桥只能通过斜坡在场地之间穿行。每次他穿过斜坡，他的幸福感都会改变。
    具体来说，当他使用直接连接两个场地的斜坡从 X 斜坡到 Y 斜坡时，他的幸福感会发生如下变化：
      如果场地 X 的高度严格高于场地 Y 的高度，那么幸福感会增加 HX − HY。
      如果场地 X 的海拔高度严格低于场地 Y 的海拔高度，幸福感会降低 2 * (HY −HX)。
      如果场地 X 的高度等于场地 Y 的高度，幸福感不会改变。
    注意: 幸福感可能是一个负值。

    起初，高桥在场地 1 号，他的幸福感是 0。
    他可以通过任何数量的斜坡（可能为零）、在任何空间结束。
    输出他最大可能的幸福感。
  输入描述
    第 1 行，两个正整数 n, m。
    第 2 行，n 个正整数 H1, H2, …, Hn。
    接下来 m 行，每行两个正整数 ui, vi，表示一条边。
  输出描述
    一行，一个整数，表示答案。
  样例1
    输入
      4 4
      10 8 12 5
      1 2
      1 3
      2 3
      3 4
    输出
      3
  样例2
    输入
      2 1
      0 10
      1 2
    输出
      无
    todo: 为什么这里输出"无"?
  提示
    2 ≤ n ≤ 2*10^5,
    n−1 ≤ m ≤ min( 2*10^5, n(n−1)/2 ),
    0 ≤ Hi ≤ 10^8，
    保证没有重边和自环。
*/